package com.miyu.system.service.sys;

import com.alibaba.fastjson2.JSONArray;
import com.alibaba.fastjson2.JSONObject;
import com.miyu.system.pojo.system.SysTask;
import com.miyu.system.pojo.system.SysTaskGroup;

/**
 * 任务工作服务
 * @author longm
 * @date 2022/12/31
 */
public interface TaskJobService {
    /**
     * addjob
     * @param job 工作
     * @return {@link JSONObject}
     */
    JSONObject addjob(JSONObject job);

    /**
     * 定时任务暂停
     * @param job 工作
     * @return {@link JSONObject}
     */
    JSONObject pausejob(JSONObject job);

    /**
     * 重启定时任务
     * @param job 工作
     * @return {@link JSONObject}
     */
    JSONObject resumeJob(JSONObject job);

    /**
     * 删除任务
     * @param job 工作
     * @return {@link JSONObject}
     */
    JSONObject deleteJob(JSONObject job);

    /**
     * 保存编辑系统任务
     * @param job 工作
     * @return {@link JSONObject}
     */
    SysTask editSysTask(JSONObject job);

    /**
     * 编辑系统任务集团
     * @param job 工作
     * @return {@link JSONObject}
     */
    SysTaskGroup editSysTaskGroup(JSONObject job);

    /**
     * 获取系统任务集团字典
     * @return {@link JSONArray}
     */
    JSONArray getSysTaskGroupDict();

    /**
     * 任务查询
     * @param job 工作
     * @return {@link JSONArray}
     */
    JSONArray querySysTask(JSONObject job);

    /**
     * 获取系统任务通过id
     * @param taskId 任务id
     * @return {@link SysTask}
     */
    SysTask getSysTaskById(String taskId);
}
